import { format } from 'date-fns'

/**
 * 获取指定时间的本周周一的日期
 * @param date 标准时间
 * {getDay方法获取 周天-周六（0-6），如果getDay是0，就往前推6天，如果是1-6，就往前推对应的0-5天}
 * @return {中国标准时间}
 */
export function getMondayDate(date) {
  const day = date.getDay()

  let deltaDay
  let endDay
  if (day == 0) {
    deltaDay = 6
    endDay = 7
  } else {
    deltaDay = day - 1
    endDay = day
  }
  //获取周一
  const monStartday = format(
    new Date(date.getTime() - deltaDay * 24 * 60 * 60 * 1000),
    'yyyy-MM-dd 00:00:00'
  )
  //获取周天
  const monEndDay = format(
    new Date(date.getTime() + (7 - endDay) * 24 * 60 * 60 * 1000),
    'yyyy-MM-dd 23:59:59'
  )
  const obj = {
    monStartday,
    monEndDay
  }

  return obj //返回本周的周一日期
}
